package com.cictec.middleware.distribute.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.cictec.middleware.commons.utils.Result;
import com.cictec.middleware.core.pojo.MiddlewarePosition;
import com.cictec.middleware.feign.gps.MiddlewareGPSService;

/**
 * 位置信息入口类
 * 
 * @author Administrator
 *
 */
@RestController
public class MiddlewarePositionController {

	/*
	 * 目前针对单节点distribute服务实现，后边在扩展多节点distribute
	 * 处理流程：
	 *  、原始数据存储（目前存储到redis）
	 * 	、数据分析：
	 * 		、获取对应的middleware-gps位置分析服务（实现相同区域【市区】设备在同一个GPS服务进行处理）
	 *  、结果信息分发处理：
	 *  	、分析后数据存储到redis
	 *  	、activemq 【topic】推送手机（预测）app
	 *  	、activeMq 【queue】第三方公司
	 *  	、apollo 推送web调度
	 */
	@Autowired
	private MiddlewareGPSService middlewareGPSService;
	
	
	/**
	 * 处理位置信息方法（位置信息、进出站）
	 * 
	 * @param position
	 */
	@RequestMapping(value = "/distribute/positionUpload")
	public Result positionUpload(@RequestBody MiddlewarePosition position) {
		return middlewareGPSService.positionUpload(position);
	}
	
	@RequestMapping(value = "/distribute/enterOutUpload")
	public Result enterOutUpload(@RequestBody MiddlewarePosition position) {
		return middlewareGPSService.enterOutUpload(position);
	}
}
